Voice commerce

ABSTRACT

In certain implementations, a system for facilitating voice commerce is provided. A user input comprising a natural language utterance related to a product or service to be purchased may be received. A first product or service that is to be purchased may be determined based on the utterance. First payment information that is to be used to purchase the first product or service may be obtained. First shipping information that is to be used to deliver the first product or service may be obtained. A purchase transaction for the first product or service may completed based on the first payment information and the first shipping information without further user input, after the receipt of utterance, that identifies a product or service type or a product or service, seller information, payment information, shipping information, or other information related to purchasing the first product or service.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No. 14/855,334, filed Sep. 15, 2015 entitled “VOICE COMMERCE”, which claims the benefit of U.S. Provisional Patent Application Ser. No. 62/051,273, filed Sep. 16, 2014 entitled “VOICE COMMERCE”, all of which are hereby incorporated by reference in their entireties.

FIELD OF THE INVENTION

The invention relates to systems and methods for providing voice commerce. More particularly, the invention relates to systems and methods for preparing and/or completing checkout of product or service purchases via a single utterance.

BACKGROUND OF THE INVENTION

Mobile electronic devices have emerged to become nearly ubiquitous in the everyday lives of many people. One of the reasons for this increased use is the convenience of performing tasks with a mobile electronic device. One task that has seen significant growth is online shopping. During an online shopping session, a user browses a website to locate a product or service for purchase. After the product or service has been located, the user makes payment through the mobile electronic device and has the purchased product or service delivered.

One difficulty in online shopping via a mobile electronic device is that the user must search a website in order to locate a product or service to be purchased and fill out numerous payment and shipping forms to complete checkout (or a purchase transaction). Mobile electronic devices typically contain small screens and keyboards, making it hard for the user to search for the product or service to purchase and input payment and shipping information. While some online shopping applications assist the user in filling out payment and shipping forms, the foregoing applications are often limited to the amount of information that can be provided. Further, some online shopping applications include a “one-click” purchase option. However, this still requires the user to browse the website to locate product or services which they wish to purchase. These and other drawbacks exist.

SUMMARY OF THE INVENTION

The invention relates to systems and methods for preparing and/or completing checkout of product or service purchases via a single utterance. More particularly, the systems and methods may process a single utterance of a user to determine a product or service that is to be purchased, payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, and/or other information that is thereafter utilized to prepare and/or complete a purchase transaction for the product or service. In some implementations, the preparation and/or completion of the purchase transaction may be performed without further user input after receipt of the utterance (with which the determination of the product or service, the payment information, or shipping information is based).

In an implementation, the system may receive and process a user input comprising a natural language utterance to determine a product or service to be purchased on behalf of a user. As an example, one or more words associated with the natural language utterance may be indicative of a product or service type, product name, seller name, etc., which can be used to determine the product or service that is to be purchased. Without further user input after the receipt of the user input (or the natural language utterance), the system may obtain payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, or other information that is to be used to complete a purchase transaction for the product or service.

In an implementation, upon receipt of a natural language utterance of a user, and without further user input after the receipt of the utterance, the system may process the utterance to determine a product or service, and complete a purchase transaction for the product or service based on payment information associated with the user, shipping information indicating who, where, when, and/or how the product or service is to be delivered, or other information. In a further implementation, after the purchase transaction is completed, the user may be provided with an option to modify one or more aspects related to the product or service purchase (e.g., modify payment information, shipping information, seller from which the product or service is purchased, etc.). As an example, the initial product or service purchase may be cancelled (and result in refund of the payment provided for the completed purchase transaction) in response to the user's modification, and a new purchase transaction may be initiated in accordance with the user's modification. Of course, in some implementations, such after-transaction-completion modifications may be limited to avoid fraud or other issues (e.g., limited to a predefined time period after the transaction completion, limited to certain types of modifications, etc.). In this way, users can experience the convenience of a purchase transaction being completed with reduced actions (e.g., single utterance) without fear of inaccuracies that might be associated with the purchase transaction.

In an implementation, upon receipt of a natural language utterance of a user, and without further user input after the receipt of the utterance, the system may process the utterance to determine a product or service to be purchased, and present a request for user confirmation (or user approval) of the product or service to be purchased, payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, or other information that is to be used to complete a purchase transaction for the product or service. Upon receipt of the requested confirmation from the user, a purchase transaction for the product or service may be completed without further user input after the receipt of the requested confirmation. As an example, after the user has provided the utterance, the user may be presented with a prompt that: (i) identifies the product or service, the cost(s) associated with the purchase/delivery of the product or service, the payment information, and the shipping information; and (ii) solicits the user's approval to complete checkout of the product or service using a particular payment method (specified by the payment information to pay for the associated cost(s)), a particular shipping method (specified by the shipping information), along with a name and address (specified by the shipping information) to which the product or service is to be delivered. The user may respond by providing a subsequent natural language utterance. If it is determined (upon receiving and processing the subsequent utterance) that the user provided his/her approval, checkout of the product or service purchase may be completed (e.g., without further user input after receipt of the utterance other than the subsequent utterance). In this way, the confirmation may be used to ensure that that the information utilized to complete checkout of the product or service checkout is accurate and acceptable to the user.

Various other aspects of the invention will be apparent through the detailed description of the invention and the drawings attached hereto. It is also to be understood that both the foregoing general description and the following detailed description are exemplary and not restrictive of the scope of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise. In addition, as used in the specification and the claims, the term “or” means “and/or” unless the context clearly dictates otherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system for providing voice commerce, according to an implementation of the invention.

FIG. 2 illustrates a system for facilitating natural language processing, according to an implementation of the invention.

FIG. 3 illustrates a flow diagram of a process for providing voice commerce, according to an implementation of the invention.

FIG. 4 illustrates a flow diagram of another process for providing voice commerce, according to an implementation of the invention.

FIG. 5 illustrates a screenshot of a user interface which facilitates voice commerce, according to an implementation of the invention.

FIGS. 6A and 6B illustrate screenshots of a user interface which facilitates voice commerce, according to an implementation of the invention.

FIGS. 7A and 7B illustrate screenshots of a user interface which facilitates management of profile information, according to an implementation of the invention.

DETAILED DESCRIPTION OF THE INVENTION

In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the implementations of the invention. It will be appreciated, however, by those having skill in the art that the implementations of the invention may be practiced without these specific details or with an equivalent arrangement. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the implementations of the invention.

FIG. 1 illustrates a system 100 for providing voice commerce to a user, according to an implementation of the invention. In an implementation, the system 100 may prepare and/or complete checkout of product or service purchases related to one or more user inputs. The user inputs may comprise an auditory input (e.g., received via a microphone), a visual input (e.g., received via a camera), a tactile input (e.g., received via a touch sensor device), a keyboard input, a mouse input, or other user input that is recognizable by the system 100. As an example, a natural language utterance may be received from a user and processed to prepare and/or complete checkout of product or service purchases.

In an implementation, system 100 may receive and process a single utterance of a user to determine a product or service that is to be purchased, payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, and/or other information that is thereafter utilized to prepare and/or complete the purchase of the product or service.

In one use case, if the user input is a natural language utterance spoken by a user, the natural language utterance may be processed by a speech recognition engine to recognize one or more words of the natural language utterance. The recognized words may then be processed, along with context information associated with the user, by a natural language processing engine to determine one or more products or services and/or other information (e.g., payment information, shipping information, seller information, associated cost information, etc.) that can be used to prepare and/or complete one or more purchase transactions for the products or services. Upon determination of such information, for example, the natural language processing engine may provide the information to one or more applications that then utilize the information to prepare and/or complete the purchase transactions.

As an example, when a user speaks the utterance “Send flowers to my mother,” the user's mother may be identified as the recipient of a product that the user intends to purchase (e.g., based on the words “send,” “my”, and “mother”), and flowers may be identified as the type of product that the user intends to have purchased and delivered to the user's mother (e.g., based on the words “send” and “flowers”). Without necessarily receiving any further input from the user, the system 100 may automatically determine the name and address of the user's mother, a payment method associated with the user, a seller from which flowers are to be purchased, a particular item (e.g., a particular flower purchase order) to be purchased from the seller, and the costs associated with the purchase/delivery of the purchase item. Such information may then be utilized to initiate and/or complete a purchase transaction for the purchase item. The name and address of the user's mother may, for example, be determined by querying the user's profile information, the user's address book(s) or contact list(s), the user's social network(s), one or more people search databases, etc. The payment method associated with the user may be determined by querying the user's profile information. The seller from which flowers are to be purchased or the purchase item from the seller may be determined based on a set of preferred merchants indicated by a service provider (e.g., a company associated with the system 100), preference information associated with the user that identifies merchants approved by the user (e.g., the user's profile information may identify a predefined set of merchants from which the user has approved the system 100 to purchase products or services on behalf of the user), or similar criteria. For example, system 100 may determine which flowers are to be purchased from the merchant's range of offerings based on the user's profile information including the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc. The associated costs may be determined based on information regarding the seller, the purchase item, the mother's address, the delivery method (e.g., different fees associated with one-day shipping, two-day shipping, etc.), the payment method (e.g., different fees associated with different payment methods), or other information.

It should be noted that while, in some implementations, a purchase transaction for a product or service may be completed without further user input after receiving a natural language utterance (from which the product or service is determined), user input may be solicited (or received unsolicited) from a user in other implementations to determine payment information, shipping information, seller information, or other information that is to be used to complete the purchase transaction.

In an implementation, upon receipt of a natural language utterance of a user, and without further user input after the receipt of the utterance, the system 100 may process the utterance to determine a product or service to be purchased, and present (e.g., via a graphical user interface, via an auditory user interface, etc.) a request for user confirmation (or user approval) of the product or service, shipping information that is to be used to deliver the product or service, payment information that is to be used to pay for the product or service, and/or other information to ensure that such information is correct and accepted by the user for use with purchasing the product or service. Upon receipt of the requested confirmation from the user, a purchase transaction for the product or service may be completed without further user input after the receipt of the requested confirmation.

As an example, with respect to the above “Send flowers to my mother” utterance scenario, the following information may be presented to the user as part of the user confirmation request: (i) the name and address of the user's mother; (ii) a payment method associated with the user; (iii) a seller from which flowers are to be purchased; (iv) a particular item (e.g., a particular flower purchase order) to be purchased from the seller; and (v) the costs associated with the purchase/delivery of the purchase item. As a further example, the user may provide any of the following utterances—“That's fine,” “The information is correct,” “Go ahead and purchase the flowers,” “Order the flowers,” or other utterance—to indicate the user's confirmation to complete the purchase transaction. As such, based on the confirmation, the purchase transaction for the purchase item (e.g., a particular flower purchase order) may be completed (e.g., without further user input after the receipt of the utterance “Send flowers to my mother” other than the confirmation utterance).

In an implementation, user profile information (e.g., name, payment information, shipping information, preferences, etc.) may be pre-stored so that the user profile information may be utilized by system 100 for preparing and/or completing checkout of product or service purchases. In an implementation, defaults associated with the user profile information, such as default payment information, default shipping information, etc., may be automatically or manually pre-set for preparing and/or completing checkout of product or service purchases.

In an implementation, preferred sellers, brands, style, size, or other parameters related to products or services may be automatically or manually pre-set as profile information. As an example, preferred sellers from which products or services are to be purchased and preferred brands of such products or services may be automatically pre-set by the system (e.g., pre-set to system preferred sellers and brands) until the preferences are manually modified by the user. The preferred store, brand, style, size, or other parameters may be obtained (e.g., in response to a natural language utterance indicating a product or service without further user input after the receipt of the utterance) to prepare and/or complete checkout of a product or service purchase unless the utterance (or other information) specifies otherwise. In another implementation, the profile information may include information relating to the general likes or dislikes of the user utilized to select the product or service to be purchased including the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc.

In an implementation, preparation and/or completion of checkout of product or service purchases may be limited to certain categories of products or services (e.g., no automobiles), a particular price range (e.g., no more than $100), etc., to reduce the number or severity of purchases related to fraud. The categories of product or services and/or the price ranges may, for instance, be automatically or manually pre-set (e.g., automatically preset by the system, manually pre-set by the user).

Other uses of system 100 are described herein and still others will be apparent to those having skill in the art. Having described a high level overview of some of the system functions, attention will now be turned to various system components that facilitate these and other functions.

System Components

System 100 may include a computer system 104, one or more databases 132, one or more remote information sources 142, 144, 164, and/or other components.

To facilitate these and other functions, computer system 104 may include one or more computing devices 110. Each computing device 110 may include one or more processors 112, one or more storage devices 114, and/or other components.

Processor(s) 112 may be programmed by one or more computer program instructions, which may be stored in storage device(s) 114. The one or more computer program instructions may include, without limitation, voice commerce application 120. Voice commerce application 120 may itself include different sets of instructions that each program the processor(s) 112 (and therefore computer system 104) to perform one or more operations described herein. For example, voice commerce application 120 may include user input processing instructions 122, transaction preparation instructions 124, checkout management instructions 126, profile management instructions 128, user interface instructions 129, and/or other instructions 130 that program computer system 104. Other applications may, of course, include one or more of the instructions 120-130 to perform one or more operations as described herein. As used herein, for convenience, the various instructions will be described as performing an operation, when, in fact, the various instructions program computer system 104 to perform the operation.

In some implementations, a given user device 160 may comprise a given computer device 110. As such, the given user device 160 may comprise processor(s) 112 that are programmed with one or more computer program instructions, such as voice commerce instructions 120, user input processing instructions 122, transaction preparation instructions 124, checkout management instructions 126, profile management instructions 128, user interface instructions 129, and/or other instructions 130.

As used hereinafter, for convenience, the foregoing instructions will be described as performing an operation, when, in fact, the various instructions may program processor(s) 112 (and thereafter computer system 104) to perform the operation.

Registering User Information and Providing Voice Commerce

In an implementation, voice commerce application 120 may register a user to use the system. For example, during registration of a user, voice commerce application 120 may obtain profile information of the user that includes user settings. Information obtained during registration (or registration information) may include, for example, user identification information, payment information, shipping information, user preferences, and/or other information. The registration information may also include preferred sellers, brands, style, size, or other parameters related to products or services as well as limits on the purchase of particular product and service categories and particular price ranges for products or services. In another implementation, the registration information may also include limitations of certain categories of products or services to be purchased and/or particular price ranges of the products or services to be purchased. The registration information may be stored as profile information associated with the user in one or more databases, such as a database 132.

In an implementation, the voice commerce application 120 may process one or more user inputs to prepare and/or complete checkout of product or service purchases related to the one or more user inputs. The user inputs may comprise an auditory input (e.g., received via a microphone), a visual input (e.g., received via a camera), a tactile input (e.g., received via a touch sensor device), an olfactory input, a gustatory input, a keyboard input, a mouse input, or other user input. As an example, a natural language utterance, a natural language gesture, or other natural language user input may be received from a user, and processed to determine the meaning of the user input (and corresponding actions, if any, to be taken) with respect to preparation and completion of a purchase transaction. It should be noted that while, in some implementations, the receipt of a natural language utterance may trigger preparation and/or completion of a purchase transaction with further user input after the receipt of the utterance, the receipt of a natural language input of another type (e.g., gestures or other non-verbal communication) may, in other implementations, trigger preparation and/or completion of a purchase transaction with further user input after the receipt of the input of the other type. As such, to the extent possible, one or more operations described herein as based on a natural language utterance may, in other implementations, instead be based on a natural language input of another type.

The voice commerce application 120 may utilize instructions associated with one or more speech recognition engines, one or more natural language processing engines, or other components for processing user inputs to determine user requests related to the user inputs. For example, voice commerce application 120 may process a single utterance of a user to determine a product or service that is to be purchased, payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, and/or other information that is thereafter utilized to prepare and/or complete the purchase of the product or service.

In an implementation, voice commerce application 120 may process a user input (e.g., a natural language utterance) to determine one or more words associated with the user input, and initiate one or more user requests (e.g., queries, commands, etc.) based on the determined words, context information associated with the user (e.g., a current location of the user, the time at which the user spoke the utterance, a product or service recently discussed by the user, or other context), user profile information, or other information. As an example, a user may speak the utterance “Order a pizza for delivery,” and the voice commerce application 120 may interpret the utterance and determine that the user's intent is to purchase a pizza for delivery to the user. In one use case, without further user input after receiving the utterance, the voice commerce application 120 may initiate and complete a purchase transaction for the pizza to be delivered. If, for instance, the voice commerce application 120 determines that the user is currently at home, it may complete a purchase transaction with a pizza restaurant from which the user has previously ordered pizza to have the previously ordered pizza delivered to the user's house.

In an implementation, voice commerce application 120 may utilize a user input (e.g., a natural language utterance) to determine a product or service that is to be purchased by searching one or more databases associated with one or more sellers (e.g., partners, third party retailers, service providers, etc.). Results obtained from the search may include one or more products and/or services related to the user input. Each set of results may be individually grouped according to its source or product/service category. The voice commerce application 120 may automatically select the product/service to be purchased from the set of results. As an example, a single utterance may automatically result in the selection of a seller (e.g., a third party retailer) and the selection of a product related to the utterance that is available for purchase via the seller.

In an implementation, the voice commerce application 120 may prepare and/or complete checkout of a product or service purchase related to one or more user inputs. The voice commerce application 120 may determine payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, and/or other information that is thereafter utilized to prepare and/or complete the purchase of the product or service. In one implementation, the voice commerce application 120 may automatically complete the checkout of the product or service purchase related to the one or more user inputs. As an example, a single utterance from the user may result in the preparation and/or completion of the checkout of the product or service without further input from the user. In another implementation, the voice commerce application 120 may provide a request for confirmation of the determined product or service, shipping information, payment information, and/or other information to the user to solicit a confirmation from the user to complete the checkout of the product or service purchase.

In an implementation, the voice commerce application 120 may utilize user profile information to prepare and/or complete checkout of product or service purchases via a user input. In an implementation, the voice commerce application 120 may utilize defaults associated with the user profile information, such as default payment information, default shipping information, etc., for preparing and/or completing checkout of product or service purchases. In another implementation, the voice commerce application 120 may utilize product and/or service preferences including preferred sellers, brands, style, size, or other parameters related to products or services for preparing and/or completing checkout of product or service purchases. In another embodiment, the voice commerce application 120 may limit checkout of product or service purchases to certain categories of products or services, a particular price range, etc., to reduce the number or severity of purchases related to fraud. In another implementation, the profile information may determine a product or service to be purchased based from profile information relating to the general likes or dislikes of the user including the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc.

Having described high level functions and operations of voice commerce application 120, attention will now be turned to particular functions and operations of voice commerce application 120 as illustrated through its various instructions. The various instructions (e.g., user input processing instructions 122, transaction preparation instructions 124, checkout management instructions 126, profile management instructions 128, user interface instructions 129, and/or other instructions 130) of voice commerce application 120 are described individually as discreet sets of instructions by way of illustration and not limitation, as two or more of the instructions may be combined.

User Input Processing

In an implementation, the user input processing instructions 122 may process one or more user inputs of a user to prepare and/or complete checkout of product or service purchases related to the one or more user inputs. The user inputs may comprise an auditory input (e.g., received via a microphone), a visual input (e.g., received via a camera), a tactile input (e.g., received via a touch sensor device), a keyboard input, a mouse input, or other user input. As described herein elsewhere, user input processing instructions 122 may comprise instructions associated with one or more speech recognition engines (e.g., speech recognition engine(s) 220 of FIG. 2), one or more natural language processing engines (e.g., natural language processing engine(s) 230 of FIG. 2), or other components for processing user inputs to determine user requests related to the user inputs. For example, user input processing instructions 122 may process a natural language utterance of a user to determine a product or service that is to be purchased, payment information that is to be used to pay for the product or service, shipping information that is to be used to deliver the product or service, and/or other information that is thereafter utilized to prepare and/or complete the purchase of the product or service.

In one use case, if the user input is a natural language utterance spoken by a user, the natural language utterance may be processed by a speech recognition engine to recognize one or more words of the natural language utterance. The recognized words may then be processed, along with context information associated with the user, by a natural language processing engine to determine one or more products or services and/or other information (e.g., payment information, shipping information, seller information, associated cost information, etc.) that can be used to prepare and/or complete checkout of product or service purchases when the user provided the natural language utterance.

In an implementation, the user input processing instructions 122 may utilize one or more previous user inputs (e.g., related to a product or service) in processing a particular user input to determine one or more products or services and/or other information (e.g., payment information, shipping information, seller information, associated cost information, etc.) that can be used to prepare and/or complete one or more checkout of product or service purchases.

As an example, a first user input (that occurs prior to a second user input) may be indicative of a user's intent to make a purchase (e.g., without necessarily identifying a product or service type or a product or service), and the second user input may be indicative of a particular product or service type and/or a particular product or service (e.g., without necessarily being indicative of the user's intent to make a purchase). In one use case, for example, a user may provide the utterance “I'm looking to buy something” as the first user input, after which an automated personal assistant (of a related application) may ask the user what the user would like to buy. The user may respond with the second user input by saying “Flowers for my mom.” The word “buy” may be recognized when speech recognition is performed on the first user input, and the word “flowers” may be recognized when speech recognition is performed on the second user input. Further processing on the word “buy” may indicate the user's intent to purchase, and further processing on the word “flowers” may indicate the particular product type of a product that the user would like to purchase.

As another example, a first user input (that occurs prior to a second user input) may be indicative of a particular product or service type and/or a particular product or service (e.g., without necessarily being indicative of the user's intent to make a purchase), and the second user input may be indicative of a user's intent to make a purchase (e.g., without necessarily identifying a product or service type or a product or service). In one scenario, for example, the user may provide the utterance “Those are beautiful flowers” while viewing photographs on a friend's social networking page. Subsequently, the user may provide the utterance “I'd like to buy some.” The words “those” and “flowers” may be recognized when speech recognition is performed on the first user input, and the words “buy” and some” may be recognized when speech recognition is performed on the second user input. Further processing on the words “those” and “flowers” may indicate the flowers in the photographs that the user viewed on the friend's social networking page, and further processing on the words “buy” and “some” may indicate the user's intent to make a purchase.

FIG. 2 illustrates a system 200 for facilitating natural language processing, according to an implementation of the invention. As shown in FIG. 2, system 200 may comprise input device(s) 210, speech recognition engine(s) 220, natural language processing engine(s) 230, application(s) 240, output device(s) 250, database(s) 132, or other components.

In an implementation, one or more components of system 200 may comprise one or more computer program instructions of FIG. 1 and/or processor(s) 112 programmed with the computer program instructions of FIG. 1. As an example, speech recognition engine(s) 220 and/or natural language processing engine(s) 230 may comprise user input processing instructions 122, transaction preparation instructions 124, checkout management instructions 126, profile management instructions 128, or other instructions.

Input device(s) 210 may comprise an auditory input device (e.g., microphone), a keyboard, a mouse, or other input devices. Input received at input device(s) 210 may be provided to speech recognition engine(s) 220 and/or natural language processing engine(s) 230.

Speech recognition engine(s) 220 may process one or more inputs received from input device(s) 210 to recognize one or more words represented by the received inputs. As an example, with respect to auditory input, speech recognition engine(s) 220 may process an audio stream captured by an auditory input device to isolate segments of sound of the audio stream. The sound segments (or a representation of the sound segments) are then processed with one or more speech models (e.g., acoustic model, lexicon list, language model, etc.) to recognize one or more words of the received inputs. Upon recognition of the words of received inputs, the recognized words may then be provided to natural language processing engine(s) 230 for further processing. In other examples, natural language processing engine(s) 230 may process one or more other types of inputs (e.g., visual input representing sign language communication, gestures, or other forms of communication) to recognize one or more words represented by the other types of inputs.

Natural language processing engine(s) 230 may receive one or more inputs from input device(s) 210, speech recognition engine(s) 220, application(s) 240, database(s) 132, or other components. As an example, natural language processing engine(s) 230 may process inputs received from input device(s) 210, such as user inputs (e.g., voice, non-voice, etc.), location-based inputs (e.g., GPS data, cell ID, etc.), other sensor data input, or other inputs to determine context information associated with one or more user inputs. As another example, natural language processing engine(s) 230 may obtain profile information, context information, or other information from database(s) 132. The obtained information (or context information determined based on inputs from input device(s) 210) may be processed to determine one or more user inputs of a user. In yet another example, natural language processing engine(s) 230 may process one or more recognized words from speech recognition engine(s) 220 and other information (e.g., information from input device(s) 210, application(s) 240, and/or database(s) 132) to determine one or more user inputs.

In an implementation, natural language processing engine(s) 230, application(s) 240, or other components may store information in database(s) 132 for later use by natural language processing engine(s) 230, application(s) 240, or other components. As an example, as described in further detail elsewhere herein, natural language processing engine(s) 230 may store information regarding user inputs in database(s) 132 and/or update profile information, or other information in database(s) 132 based on the information regarding the user inputs.

Transaction Preparation and Search for Products or Services

In an implementation, transaction preparation instructions 124 may utilize information from a processing of the user inputs (e.g., one or more recognized words, product or service type, product name, seller name, etc.) to determine a product or service that is to be purchased. Transaction preparation instructions 124 may utilize such information to search one or more databases associated with one or more sellers (e.g., partners, third party retailers, service providers, etc.). Results obtained from the search may include one or more products and/or services related to the user input. The results are then utilized by the transaction preparation instructions 124 to select the product or service to be purchased by the user. As an example, a single utterance may automatically result in the selection of a seller (e.g., a third party retailer) and the selection of a product or service related to the utterance that is available for purchase via the seller.

In an implementation, transaction preparation instructions 124 may obtain product or service results related to the user input that are available from a remote information source 140. Remote information sources 140 may include information sources that are accessible to computer system 104 via a remote or external network connection (e.g., outside of a firewall), such as the Internet. For example, as illustrated in FIG. 1, remote information source(s) 140 may include, without limitation, a third party search engine 142 (e.g., GOOGLE, BING, YAHOO, etc.), third party retailers 144, including online retailers and offline retailers having an online presence (e.g., AMAZON, GROUPON, EBAY, EXPEDIA, BESTBUY, etc.), third party service providers 146 (e.g., weather services, calendar/scheduling services, etc.), and/or other information source that is remotely accessible to computer system 104. In another implementation, the transaction preparation instructions 124 may select the product or service (that is to be purchased) from one or more predetermined sets of products or services stored in database 132. For example, system 200 may store one or more sets of predetermined products or services that may be selected by the transaction preparation instructions 124 or included in the product or service results.

In an implementation, transaction preparation instructions 124 may provide a set of product and service results for the search. The transaction preparation instructions 124 may utilize the set of results to select the product or service that is to be purchased. In an implementation, the transaction preparation instructions 124 may select the product or service (that is to be purchased) according to a set of predefined rules. For example, the product or service (that is to be purchased) may be selected based on the user input, location of the user, cost comparison of sellers (e.g., partners, third party retailers, third party service providers, etc.), shipping date comparison of the sellers, or other criteria. In another implementation, the results of the search are presented for selection by the user. In another implementation, the profile information may include information relating to the general likes or dislikes of the user t to determine the product or service to be purchased including the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc.

In an implementation, transaction preparation instructions 124 may utilize context information associated with the user to determine the product or service to be purchased. Based on the context information, the transaction preparation instructions 124 may refine the search for products or services to be purchased. In one embodiment, the context information may include personal data associated with the user, data from a database associated with the user, data describing an event, data describing an acoustic environment in which the spoken input is received, location, local time, etc. For example, the transaction preparation instructions 124 may utilize the time of the user input to further define the availability of product or service to be purchased.

Continuing the foregoing examples, a user input related to “lawnmower” may cause transaction preparation instructions 124 to cause a search on a third party search engine 142 to be initiated using the search term “lawnmower.” In an implementation, depending on the context (e.g., indicating that the user intends to buy a lawnmower), transaction preparation instructions 124 may add additional search terms such as “purchase” or “sale.” Transaction preparation instructions 124 may search (in addition to or instead of) other remote information sources 140 as well (e.g., retail related to “lawnmower” from one or more third party retailers 144, landscaping services related to “lawnmower” from one or more third party service providers 146, and/or other information related to “lawnmower” from one or more other remote information sources 140).

In another embodiment, the transaction preparation instructions 124 may utilize user inputs such as location-based inputs (e.g., GPS data, cell ID, etc.) to further refine the search for products or services to be purchased. The transaction preparation instructions 124 may utilize the location-based input to further refine the geographic area in which the products or services are offered. For example, if the user utters “Please buy a pizza,” the transaction preparation instructions 124 utilize the location-based inputs to determine the closest pizzeria in relation to the user. In an implementation, the transaction preparation instructions 124 may utilize website browsing information to refine the search for products or services to be purchased. For example, if the user utters “buy this” while browsing a retailing website, the transaction preparation instructions 124 may utilize website browsing information to determine the product or service the user is viewing. It should be contemplated that the transaction preparation instructions 124 prepares and/or completes checkout of the determined product or service directly from the website (or the seller associated with the website) or from another seller that may not be associated with the website.

In an implementation, the transaction preparation instructions 124 may utilize the profile information to select the product or service and/or the sellers from which the product or service is to be purchased. As described below, the profile information may include preferred sellers, brands, style, size, or other parameters related to products or services that may be automatically or manually pre-set. The profile information may also include the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc. The transaction preparation instructions 124 may select the product or service and the sellers (from which the product or service is to be purchased) based on the profile information. As an example, preferred retailers from which products or services is to be purchased and preferred brands of such products or services may be automatically pre-set by the system (e.g., pre-set to system preferred sellers and brands) until the defaults are manually modified by users. The default store, brand, style, size, or other parameters may be obtained (in response to an utterance indicative of a user's intent to purchase a product or service) to prepare and/or complete checkout of a product or service purchase unless the single utterance (or other information) specifies otherwise.

In an implementation, selection of the product or service purchases by the transaction preparation instructions 124 may be limited to certain categories of products or services (e.g., no automobiles), a particular price range (e.g., no more than $100), etc., to reduce the number or severity of purchases related to fraud. The categories of product or services and/or the price ranges may, for instance, be automatically or manually pre-set (e.g., automatically preset by the system, manually pre-set by the user) and stored in the profile information.

In one implementation, the transaction preparation instructions 124 may provide prospective transactions or offers to the user based on the user's profile information. For example, the transaction preparation instructions 124 may prepare a transaction for the user without any input from the user. In one implementation, the transaction preparation instructions 124 may analyze the user's profile information to determine any potential transaction opportunities, and provide a prospective transaction or offer related to the potential transaction opportunity. For example, in the case that voice commerce application 120 determines an upcoming anniversary of the user, the transaction preparation instructions 124 may prepare a prospective purchase for the user related to the anniversary. In another implementation, the transaction preparation instructions 124 may provide offers to the user related to purchases for the potential transaction opportunity.

In an implementation, an administrator of the system 100 (or a subsystem thereof) may manage a set of predetermined sellers from whose inventories are searched for available products or services in response to a user input indicative of a user's intent to purchase. As an example, the administrator may specify a set of sellers that have priority over other sellers in having their products or services offered to users. Thus, a seller from which a product or service is to be purchased may be selected from the predetermined set of sellers specified by the administrator. Other criteria may, of course, be considered when selecting a seller with which a user is to complete a purchase transaction for a product or service.

Checkout Management

In an implementation, the checkout management instructions 126 may prepare and/or complete checkout of selected product or service purchases related to one or more user inputs. The checkout management instructions 126 may determine payment information that is to be used to pay for a selected product or service, shipping information that is to be used to deliver the selected product or service, and/or other information that is thereafter utilized to prepare and/or complete the purchase of the selected product or service. For example, the checkout management instructions 126 may utilize default payment information stored in the profile information for preparing or completing checkout of the selected product or service. Likewise, the checkout management instructions 126 may utilize default shipping information stored in the profile information for preparing or completing checkout of the selected product or service. In another implementation, the checkout management instructions 126 utilize an address book or contact list of the user stored in the profile information to provide shipping information for checkout of products or services for individuals other than the user. For example, a user input may reference an individual, other than the user, that is recognized by the user input processing instructions 122 (e.g., “Send flowers to my mom” wherein the user's mom is recognized as the intended recipient of the flowers). The checkout management instructions 126 may utilize the address book or contact list of the user to determine if the referenced individual's address is available for input as the shipping information.

In one implementation, the checkout management instructions 126 automatically complete the checkout of the product or service purchase. As an example, a single utterance from the user may result in the completion of checkout of the product or service without further input or approval from the user. In another implementation, the checkout management instructions 126 may present a request for confirmation of the determined product or service, shipping information, payment information, and/or other information to the user to solicit a confirmation from the user to complete the checkout of the product or service purchase. For example, the checkout management instructions 126 may prepare all of the aspects (e.g., payment information, shipping information, etc.) of checkout of the product or service purchase but wait until confirmation from the user to complete checkout.

In an implementation, the checkout management instructions 126 may utilize user profile information for preparing and/or completing checkout of product or service purchases via a user input. In an implementation, the checkout management instructions 126 may utilize defaults associated with the user profile information, such as default payment information, default shipping information, etc., for preparing and/or completing checkout of product or service purchases. In another implementation, the checkout management instructions 126 utilize an address book or contact list of the user stored in the profile information to provide shipping information for checkout of products or services for individuals other than the user.

Profile Management

In an implementation, stored user profile information (e.g., name, payment information, shipping information, preferences, etc.) may be utilized by voice commerce application 120 for preparing and/or completing checkout of product or service purchases. In an implementation, profile management instructions 128 may automatically set defaults associated with the user profile information, such as default payment information, default shipping information, etc. In another implementation, profile management instructions 128 may automatically or manually pre-set profile information for preparing and/or completing checkout of product or service purchases. In an implementation, profile management instructions 128 enable the user to set profile information including default payment and shipping information utilized by the voice commerce application 120.

In an implementation, profile management instructions 128 may automatically or pre-set preferred sellers, brands, style, size, or other parameters related to products or services. As an example, preferred retailers or service providers from which products or services are to be purchased and preferred brands of such products or services may be automatically pre-set by the profile management instructions 128 (e.g., pre-set to system preferred sellers and brands) until the preferences are manually modified by users. The preferred store, brand, style, size, or other parameters may be obtained (in response to a single utterance) to prepare and/or complete checkout of a product or service purchase unless the single utterance (or other information) specifies otherwise. In an implementation, profile management instructions 128 enable the user to set preferred sellers, brands, style, size, or other parameters related to products or services utilized by the voice commerce application 120. The profile management instructions 128 may automatically or pre-set information relating to the general likes or dislikes of the user to determine a product or service to be purchased including the types of items a user likes, qualities of items the user likes, the categories of items a user likes, minimum item rating requirements, item pricing requirements, user location and context information, shipping requirements, etc.

In an implementation, profile management instructions 128 may automatically or pre-set limits of checkout of product or service purchases to certain categories of products or services (e.g., no automobiles), a particular price range (e.g., no more than $100), etc., to reduce the number or severity of purchases related to fraud. The categories of product or services and/or the price ranges may, for instance, be automatically or manually pre-set (e.g., automatically preset by the system, manually pre-set by the user). In an implementation, profile management instructions 128 enable the user to set limits of checkout of product or service purchases to certain categories of products or services (e.g., no automobiles), a particular price range (e.g., no more than $100), or other criteria.

In another implementation, profile management instructions 128 may store profile information relating to the user's personal information. For example, the profile information may include the user's address book or contact list, calendar, and other information which assist the voice commerce application 120 in determining products or services to be purchased. In one implementation, the user's personal information may be pre-stored based on the registration information or otherwise set by the user.

User Interface

In an implementation, user interface instructions 129 may generate a voice commerce interface. The voice commerce interface may provide status information relating to the preparation and/or completion of checkout of product or service purchases. For example, the voice commerce interface may indicate to a user when checkout of product or service purchases is completed. In one implementation, the user interface instructions 129 may also provide the user with a request for confirmation to complete checkout of a product or service purchase. Examples of the voice commerce interface are illustrated with respect to FIGS. 5, 6A, and 5B.

In an implementation, user interface instructions 129 may generate a profile information management interface. The profile management interface may allow the user to set profile information related to the purchase of products or services. For example, the profile management interface enables the user to set default payment and shipping information. The profile management interface may also enable the user to set preferred sellers, brands, style, size, or other parameters related to products or services as well as limits of certain categories of products or services and particular price ranges.

Examples of System Architectures and Configurations

Different system architectures may be used. For example, all or a portion of voice commerce application 120 may be executed on a user device. In other words, computing device 110 as illustrated may include a user device operated by the user. In implementations where all or a portion of voice commerce application 120 is executed on the user device, the user device may search remote information sources, prepare or complete checkout of product or service purchases, generate the interface, and/or perform other functions/operations of voice commerce application 120.

All or a portion of voice commerce application 120 may be executed on a server device. In other words, computing device 110 as illustrated may include a server device that obtains a user request from a user device operated by the user. In implementations where all or a portion of voice commerce application 120 is executed on the server device, the server device may search remote information sources 140, obtain sets of results, prepare or complete checkout of product or service purchases, provide the interface to a user device, and/or perform other functions/operations of voice commerce application 120.

Although illustrated in FIG. 1 as a single component, computer system 104 may include a plurality of individual components (e.g., computer devices) each programmed with at least some of the functions described herein. In this manner, some components of computer system 104 may perform some functions while other components may perform other functions, as would be appreciated. The one or more processors 112 may each include one or more physical processors that are programmed by computer program instructions. The various instructions described herein are exemplary only. Other configurations and numbers of instructions may be used, so long as the processor(s) 112 are programmed to perform the functions described herein.

It should be appreciated that although the various instructions are illustrated in FIG. 1 as being co-located within a single computing device 110, one or more instructions may be executed remotely from the other instructions. For example, some computing devices 110 of computer system 104 may be programmed by some instructions while other computing devices 110 may be programmed by other instructions, as would be appreciated. Furthermore, the various instructions described herein are exemplary only. Other configurations and numbers of instructions may be used, so long as processor(s) 112 are programmed to perform the functions described herein.

The description of the functionality provided by the different instructions described herein is for illustrative purposes, and is not intended to be limiting, as any of instructions may provide more or less functionality than is described. For example, one or more of the instructions may be eliminated, and some or all of its functionality may be provided by other ones of the instructions. As another example, processor(s) 112 may be programmed by one or more additional instructions that may perform some or all of the functionality attributed herein to one of the instructions.

The various instructions described herein may be stored in a storage device 114, which may comprise random access memory (RAM), read only memory (ROM), and/or other memory. The storage device may store the computer program instructions (e.g., the aforementioned instructions) to be executed by processor(s) 112 as well as data that may be manipulated by processor(s) 112. The storage device may comprise floppy disks, hard disks, optical disks, tapes, or other storage media for storing computer-executable instructions and/or data.

The various components illustrated in FIG. 1 may be coupled to at least one other component via a network 102, which may include any one or more of, for instance, the Internet, an intranet, a PAN (Personal Area Network), a LAN (Local Area Network), a WAN (Wide Area Network), a SAN (Storage Area Network), a MAN (Metropolitan Area Network), a wireless network, a cellular communications network, a Public Switched Telephone Network, and/or other network. In FIG. 1 and other drawing Figures, different numbers of entities than depicted may be used. Furthermore, according to various implementations, the components described herein may be implemented in hardware and/or software that configure hardware.

User device(s) may include a device that can interact with computer system 104 through network 102. Such user device(s) may include, without limitation, a tablet computing device, a smartphone, a laptop computing device, a desktop computing device, a network-enabled appliance such as a “Smart” television, a vehicle computing device, and/or other device that may interact with computer system 104.

The various databases 132 described herein may be, include, or interface to, for example, an Oracle™ relational database sold commercially by Oracle Corporation. Other databases, such as Informix™, DB2 (Database 2) or other data storage, including file-based (e.g., comma or tab separated files), or query formats, platforms, or resources such as OLAP (On Line Analytical Processing), SQL (Structured Query Language), a SAN (storage area network), Microsoft Access™, MySQL, PostgreSQL, HSpace, Apache Cassandra, MongoDB, Apache CouchDB™, or others may also be used, incorporated, or accessed. The database may comprise one or more such databases that reside in one or more physical devices and in one or more physical locations. The database may store a plurality of types of data and/or files and associated data or file descriptions, administrative information, or any other data. The database(s) 132 may be stored in storage device 114 and/or other storage that is accessible to computer system 104.

Example Flow Diagrams

The following flow diagrams describe operations that may be accomplished using some or all of the system components described in detail above and, in some implementations, various operations may be performed in different sequences and various operations may be omitted. Additional operations may be performed along with some or all of the operations shown in the depicted flow diagrams. One or more operations may be performed simultaneously. Accordingly, the operations as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.

FIG. 3 depicts a data flow diagram for a process 300 for providing voice commerce, according to an implementation of the invention. The various processing operations and/or data flows depicted in FIG. 3 (and in the other drawing figures) are described in greater detail herein. The described operations may be accomplished using some or all of the system components described in detail above and, in some implementations, various operations may be performed in different sequences and various operations may be omitted. Additional operations may be performed along with some or all of the operations shown in the depicted flow diagrams. One or more operations may be performed simultaneously. Accordingly, the operations as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.

In an operation 302, a natural language utterance of a user may be received. As an example, upon receipt, the natural language utterance may be processed by a speech recognition engine to recognize one or more words of the natural language utterance. The recognized words may then be processed, along with context information associated with the user, by a natural language processing engine to determine one or more products or services and/or other information (e.g., payment information, shipping information, seller information, associated cost information, etc.) that can be used to prepare and/or complete checkout of product or service purchases.

In an operation 304, a product or service to be purchased on behalf of the user may be determined based on the natural language utterance. As an example, upon recognition of one or more words associated with the natural language utterance that are related to at least one product or service, the product/service-related words may be utilized to search one or more databases associated with one or more third party retailers and/or service providers, and obtain results indicating one or more products or services. The results may then be processed, along with context information associated with the user, to select the most relevant product or service as the product or service that is to be purchased on behalf of the user.

As illustrated by FIG. 3, in one implementation, the product or service that is to be purchased may be determined without any further user input after the receipt of the natural language utterance (from which the determination of the product or service to be purchased is based). In another implementation, the product or service that is to be purchased may be determined without further user input identifying the product or service after the receipt of the natural language utterance.

In an operation 306, payment information that is to be used to pay for the product or service may be retrieved. As an example, default payment information associated with the user (e.g., for paying for product or services on behalf of the user) may be stored as profile information associated with the user. Such default payment may, for example, be retrieved from one or more databases storing the user's profile information, and utilized to pay for the product or service.

In an operation 308, shipping information that is to be used to deliver the product or service may be retrieved. As an example, default shipping information associated with the user (e.g., for delivering products or services on behalf of the user) may be stored as profile information associated with the user. Such default shipping information may, for instance, retrieved from one or more databases storing the user's profile information, and be utilized to deliver the product or service.

In an operation 310, a purchase transaction for the product or service may be completed based on the payment information and the shipping information.

As illustrated by FIG. 3, in one implementation, the purchase transaction may be completed without any further user input after the receipt of the natural language utterance (from which the determination of the product or service to be purchased is based). In another implementation, the product or service that is to be purchased may be determined without further user input identifying the product or service, identifying the payment information, or identifying the shipping information after the receipt of the natural language utterance.

FIG. 4 depicts a data flow diagram for another process 400 for providing voice commerce, according to an implementation of the invention. The various processing operations and/or data flows depicted in FIG. 4 (and in the other drawing figures) are described in greater detail herein. The described operations may be accomplished using some or all of the system components described in detail above and, in some implementations, various operations may be performed in different sequences and various operations may be omitted. Additional operations may be performed along with some or all of the operations shown in the depicted flow diagrams. One or more operations may be performed simultaneously. Accordingly, the operations as illustrated (and described in greater detail below) are exemplary by nature and, as such, should not be viewed as limiting.

As illustrated by FIG. 3, a natural language utterance of a user may be received, and a product or service that is to be purchased on behalf of the user may be determined based on the natural language utterance without further user input after the receipt of the natural language utterance. Payment information that is to be used to pay for the product or service, and shipping information that is to be used to deliver the product or service, may also be retrieved.

Referring back to FIG. 4, in an operation 402, a seller from which the product or service is to be purchased may be selected. As an example, the user may have specified a set of sellers from which the user prefers to purchase products or services. As such, the seller may be selected from the predetermined set of sellers specified by the user. As another example, an administrator of the system 100 (or of a subsystem of the system 100) may have specified a set of sellers that have priority over other sellers in having their products or services offered to users. Thus, the seller may be selected from the predetermined set of sellers specified by the administrator. As yet another example, a database of sellers may be queried to determine which seller has the product or service available for purchase. The sellers that have the product or service available for purchase may then be compared against one another to determine, for example, which seller has the lower price (or overall lower total purchase costs) for the product or service, which sellers has the highest customer rating, or other criteria in selecting the seller from which the product or service is to be purchased.

In an operation 404, seller information associated with the selected seller may be retrieved. As an example, seller information may comprise a name of the seller, contact information associated with the seller, a price at which the seller will sell the product or service to the user, individual or overall costs involved with purchase of the product or service from the seller, a refund policy of the seller for the product or service, or other information.

In an operation 406, a request for user confirmation (to purchase the product or service from the seller and to use the payment information and the shipping information for a purchase transaction for the product or service) may be provided without further user input after the receipt of the utterance.

In an operation 408, it may be determined that the user has confirmed purchasing of the product or service from the seller and use of the payment information and the shipping information for the purchase transaction. As such, in an operation 410, the purchase transaction may be completed based on the seller information, the payment information, and the shipping information without further user input after the receipt of the utterance other than a user confirmation with respect to the confirmation request.

Example Screenshots

FIG. 5 illustrates a screenshot 502 of a user interface which facilitates voice commerce, according to an implementation of the invention. The described screenshots may be accomplished using some or all of the system components described in detail above. As shown in screenshot 502 of FIG. 5, a voice commerce application may enable the user to complete checkout of product or service purchases via a single utterance. As depicted in screenshot 502, the user may say “Send flowers to Betsy.” In response to receiving the utterance from the user, the voice commerce application may determine that flowers are to be purchased, and select a third party retailer from which to purchase the flowers. As an example, the user may have purchased a particular kind of flower (e.g., red roses) for Betsy numerous times in the past. As such, the particular kind of flower may be determined as the particular product that is to be purchased on behalf of the user for Betsy. The selection of the product may, for example, be performed without further user input identifying the product type (e.g., flowers) after the receipt of the utterance, without any further user input after the receipt of the utterance, etc.

The voice commerce application may also determine the payment information to be used to pay for the flowers. Because the utterance indicates that the flowers are to be sent to Betsy, the voice commerce application may determine Betsy's address from the user's address book or contact list and provide Betsy's shipping information to the retailer. The voice commerce application may then, for example, complete a purchase transaction using seller information associated with the third party retailer, the payment information, the shipping information, or other information without further user input from the user. Upon completing the purchase transaction for the flowers, the voice commerce application may indicate that checkout for the flowers has been completed. In an implementation, the product to be purchased, a seller from which the product is to be purchased, payment information, shipping information, or other information may be displayed to the user.

FIGS. 6A and 6B illustrate screenshots 602 and 604 of another user interface which facilitates voice commerce, according to an implementation of the invention. The described screenshots may be accomplished using some or all of the system components described in detail above. As shown in screenshot 602 of FIG. 6A, a voice commerce application may solicit a user confirmation from a user with respect to a product purchase before completing checkout of the product purchase. As depicted in screenshot 602, the user may say “Send flowers to Betsy.” In response to receiving the single utterance from the user, the voice commerce application may determine that flowers are to be purchased, and select a third party retailer from which to purchase the flowers. The voice commerce application may also determine the payment information to be used to pay for the flowers. Because the utterance indicates that the flowers are be sent to Betsy, the voice commerce application may determine Betsy's address from the user's address book or contact list and provide Betsy's shipping information to the retailer. The voice commerce application may then present a request for user confirmation of the purchase to the user (e.g., without further user input after the receipt of the utterance). As shown in screenshot 604, the user may confirm purchase of the flowers by saying “Yes.” Upon confirmation of the purchase, the voice commerce application may indicate that checkout for the flowers has been completed.

FIG. 7A illustrates a screenshot 702 of a user interface which facilitates management of user profile information, according to an implementation of the invention. The described screenshots may be accomplished using some or all of the system components described in detail above. As shown in screenshot 702, the user profile information interface includes the user name, default payment information, and default shipping information. The user may edit any data fields associated with the user name, default payment information, and default shipping information.

FIG. 7B illustrates a screenshot 704 of another user interface which facilitates management of user profile information, according to an implementation of the invention. The described screenshots may be accomplished using some or all of the system components described in detail above. As shown in screenshot 704, the user profile information interface may enable the user to pre-set preferences of different products and/or services to be purchased. The profile information interface includes a product/service category that may be selected by the user. For each product/service category, the user may select preferred sellers, preferred brands, preferred styles, preferred sizes, and other parameters related to the products/services to be selected. The user may also limit certain categories of products or services to a particular price range. The user may edit any data field associated with product/service category to include preferred retail stores/service providers, preferred brands, preferred styles, preferred sizes, and price ranges.

Other implementations, uses and advantages of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. The specification should be considered exemplary only, and the scope of the invention is accordingly intended to be limited only by the following claims. 

What is claimed is:
 1. A method for providing voice commerce, the method being implemented on a computer system having one or more physical processors programmed with computer program instructions which, when executed, perform the method, the method comprising: receiving, by the computer system, a user input comprising a natural language utterance; providing, by the computer system, the natural language utterance as an input to a speech recognition engine; obtaining, by the computer system, one or more words or phrases recognized from the natural language utterance as an output of the speech recognition engine; identifying, by the computer system, based on the one or more words or phrases, a product or service to be purchased on behalf of a user; searching, by the computer system, one or more databases based on the product or service to be purchased on behalf of the user; selecting, by the computer system, without further user input after the receipt of the user input, a seller from which to purchase the product or service based on the search; and completing, by the computer system, a purchase transaction for the product or service from the selected seller.
 2. The method of claim 1, wherein identifying the product or service further comprises: determining, by the computer system, a context based at least on the one or more words or phrases, wherein the product or service is identified based at least on the determined context.
 3. The method of claim 1, wherein identifying the product or service comprises identifying the product or service without further user input after the receipt of the user input.
 4. The method of claim 1, wherein completing the purchase transaction for the product or service comprises: obtaining, by the computer system, without further user input after the receipt of the user input, payment information with which to pay for the product or service.
 5. The method of claim 1, wherein completing the purchase transaction for the product or service comprises: obtaining, by the computer system, without further user input after the receipt of the user input, shipping information with which to deliver the product or service, wherein the shipping information specifies a name or address of a recipient to which the product or service is to be delivered after the product or service is purchased, and wherein the purchase transaction is completed based on the payment information and the shipping information.
 6. The method of claim 1, the method further comprising: obtaining, by the computer system, prior to the search, seller information describing one or more products or services available from one or more sellers via one or more remote information sources; and storing, by the computer system, the seller information in the one or more databases.
 7. The method of claim 6, wherein the one or more remote information sources comprise at least a third party search engine, a third party retailer, and/or a third party service provider.
 8. The method of claim 6, wherein the seller information comprises a price at which the one or more sellers will sell the one or more products or services, and wherein selecting the seller comprises selecting the seller based on the price at which the seller will sell the product or service.
 9. The method of claim 1, the method further comprising: obtaining, by the computer system, user profile information associated with the user, wherein the user profile information indicates a predetermined set of sellers associated with the user, wherein selecting the seller comprises selecting the seller from the predetermined set of user-specified sellers indicated by the user profile information.
 10. The method of claim 1, the method further comprising: obtaining, by the computer system, a predetermined set of sellers specified by an administrator of the system that is different than the user, wherein selecting the seller comprises selecting the seller from the predetermined set of administrator-specified sellers.
 11. The method of claim 1, wherein completing the purchase transaction for the product or service comprises: obtaining, by the computer system, without further user input after the receipt of the user input, payment information with which to pay for the product or service; and obtaining, by the computer system, without further user input after the receipt of the user input, shipping information with which to deliver the product or service, wherein the shipping information specifies a name or address of a recipient to which the product or service is to be delivered after the product or service is purchased, and wherein the purchase transaction is completed based on the payment information and the shipping information.
 12. The method of claim 11, the method further comprising: identifying, by the computer system, an intended recipient of the product or service based on the user input, and wherein obtaining the shipping information comprises: obtaining, by the computer system, an address of the intended recipient.
 13. The method of claim 12, wherein obtaining the address of the intended recipient comprises: accessing, by the computer system, an address book of the user, wherein the address book comprises an identification of the intended recipient and the address of the intended recipient.
 14. The method of claim 1, wherein completing the purchase transaction for the product or service from the selected seller comprises completing the purchase transaction without further user input after the receipt of the user input.
 15. The method of claim 1, wherein completing the purchase transaction for the product or service from the selected seller comprises: providing, by the computer system, without further user input after the receipt of the user input, a request for user confirmation to complete the purchase transaction for the product or service; determining, by the computer system, that the user has confirmed the purchase transaction; and completing, by the computer system, without further user input after the receipt of the user input other than a user confirmation with respect to the confirmation request, the purchase transaction based on the determination that the user has confirmed the purchase transaction.
 16. A system for providing voice commerce, the system comprising: one or more physical processors programmed with computer program instructions which, when executed, cause the one or more physical processors to: receive a user input comprising a natural language utterance; provide the natural language utterance as an input to a speech recognition engine; obtain one or more words or phrases recognized from the natural language utterance as an output of the speech recognition engine; identify, based on the one or more words or phrases, a product or service to be purchased on behalf of a user; search one or more databases based on the product or service to be purchased on behalf of the user; select, without further user input after the receipt of the user input, a seller from which to purchase the product or service based on the search; and complete a purchase transaction for the product or service from the selected seller.
 17. The system of claim 16, wherein to identify the product or service, the one or more physical processors are further caused to: determine a context based at least on the one or more words or phrases, wherein the product or service is identified based at least on the determined context
 18. The system of claim 16, wherein to identify the product or service, the one or more physical processors are further caused to: identify the product or service without further user input after the receipt of the user input.
 19. The system of claim 16, wherein to complete the purchase transaction for the product or service, the one or more physical processors are further caused to: obtain, without further user input after the receipt of the user input, payment information with which to pay for the product or service.
 20. The system of claim 16, wherein to complete the purchase transaction for the product or service, the one or more physical processors are further caused to: obtain, without further user input after the receipt of the user input, shipping information with which to deliver the product or service, wherein the shipping information specifies a name or address of a recipient to which the product or service is to be delivered after the product or service is purchased, and wherein the purchase transaction is completed based on the payment information and the shipping information.
 21. The system of claim 16, wherein the one or more physical processors are further caused to: obtain, prior to the search, seller information describing one or more products or services available from one or more sellers via one or more remote information sources; and store the seller information in the one or more databases.
 22. The system of claim 21, wherein the one or more remote information sources comprise at least a third party search engine, a third party retailer, and/or a third party service provider.
 23. The system of claim 21, wherein the seller information comprises a price at which the one or more sellers will sell the one or more products or services, and wherein selecting the seller comprises selecting the seller based on the price at which the seller will sell the product or service.
 24. The system of claim 16, wherein the one or more physical processors are further caused to: obtain user profile information associated with the user, wherein the user profile information indicates a predetermined set of sellers associated with the user, wherein selecting the seller comprises selecting the seller from the predetermined set of user-specified sellers indicated by the user profile information.
 25. The system of claim 16, wherein the one or more physical processors are further caused to: obtain a predetermined set of sellers specified by an administrator of the system that is different than the user, wherein selecting the seller comprises selecting the seller from the predetermined set of administrator-specified sellers.
 26. The system of claim 16, wherein to complete the purchase transaction for the product or service, the one or more physical processors are further caused to: obtain, without further user input after the receipt of the user input, payment information with which to pay for the product or service; and obtain, without further user input after the receipt of the user input, shipping information with which to deliver the product or service, wherein the shipping information specifies a name or address of a recipient to which the product or service is to be delivered after the product or service is purchased, and wherein the purchase transaction is completed based on the payment information and the shipping information.
 27. The system of claim 26, wherein the one or more physical processors are further caused to: identify an intended recipient of the product or service based on the user input, and wherein to obtain the shipping information, the one or more physical processors are further caused to: obtain an address of the intended recipient.
 28. The system of claim 27, wherein to obtain the address of the intended recipient, the one or more physical processors are further caused to: access an address book of the user, wherein the address book comprises an identification of the intended recipient and the address of the intended recipient.
 29. The system of claim 16, wherein completing the purchase transaction for the product or service from the selected seller comprises completing the purchase transaction without further user input after the receipt of the user input.
 30. The system of claim 16, wherein to complete the purchase transaction for the product or service from the selected seller, the one or more physical processors are further caused to: provide, without further user input after the receipt of the user input, a request for user confirmation to complete the purchase transaction for the product or service; determine that the user has confirmed the purchase transaction; and complete, without further user input after the receipt of the user input other than a user confirmation with respect to the confirmation request, the purchase transaction based on the determination that the user has confirmed the purchase transaction. 